package nconv.convert.plugins;

/**
 * Created by xiaobyu on 5/16/2016.
 */
public interface TGPPConvertPlugin {
    public String getReplacedAVPDefOrDiameterMessageHeading(String original);

    public boolean isDiameterAVPTable(String tableName);

    public String getAVPNameInTable(String avpName);

    public boolean isAVPDefineEscaped(String avpName);

    public boolean enableDetectionOnChildAVPs();

    public boolean canBeCode(String heading, String content);

    /**
     * Revise the table content by making string replacement, make sure the size of the content won't change
     * after the revision.
     * @param tableName diameter AVP table name
     * @param content the content of the table
     * @return revised content
     */
    public String reviseAVPTable(String tableName, String content);
}
